package juego.Graficos;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

import juego.Persistencia.PersistenciaDeJuego;

public class MenuPrincipal extends JPanel {

	private static final long serialVersionUID = 1L;

	private JButton comenzarPartida;
	private JButton retomarPartidaGuardada;
	private JButton verPuntajes;
	private JPanel cuerpoPrincipal;
	private JPanel centroPantalla;
	private MenuPrincipalAction actionMenuPrincipal;
	private JugarAction actionJugar;
	
	public MenuPrincipal(MenuPrincipalAction unaAction,JugarAction otraAction ){
		setearCuerpoPrincipal();	
		actionMenuPrincipal = unaAction;
		actionJugar = otraAction;
	}
	
	public void setearCuerpoPrincipal(){
		cuerpoPrincipal = new JPanel();
		cuerpoPrincipal.setLayout( new BorderLayout() );
		centroPantalla = new JPanel();
		centroPantalla.setLayout( new GridLayout() );
		
		verPuntajes = new JButton();
		comenzarPartida = new JButton();
		retomarPartidaGuardada = new JButton();
		
		verPuntajes.setText("Ver Puntajes");
		retomarPartidaGuardada.setText("Retomar la partida guardada");
		comenzarPartida.setText("Comenzar Partida");
		
		verPuntajes.setFont(new Font("sansserif",Font.ITALIC,40));
		retomarPartidaGuardada.setFont(new Font("sansserif",Font.ITALIC,40));
		comenzarPartida.setFont(new Font("sansserif",Font.ITALIC,40));
		
		verPuntajes.setBackground(Color.LIGHT_GRAY);
		retomarPartidaGuardada.setBackground(Color.LIGHT_GRAY);
		comenzarPartida.setBackground(Color.LIGHT_GRAY);
		
		verPuntajes.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				actionMenuPrincipal.accionarBotonVerPuntaje();
			}	
		});
		retomarPartidaGuardada.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				actionMenuPrincipal.accionarBotonReanudarPartida();
			}	
		});
		comenzarPartida.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				actionJugar.accionarJugar();
			}	
		});
		
		centroPantalla.setLayout(new GridLayout(3,1,50,50));
		centroPantalla.add(comenzarPartida);
		centroPantalla.add(retomarPartidaGuardada);
		centroPantalla.add(verPuntajes);
		cuerpoPrincipal.add(centroPantalla,BorderLayout.CENTER);
		cuerpoPrincipal.setBorder(new EmptyBorder(100, 50, 50, 50) );
		
		this.add(cuerpoPrincipal);
		this.setVisible(true);
	
	}
}
